NexusPi Git Node
lib/microReticulum/src/Cryptography/CBC.h 20ec0b4ee3f3e7a8b3c8d00dcdcd5afdcf2bc840 (20ec0b4e) Text, 1.95 KB
T8b949e/*
* Copyright (C) 2015 Southern Storm Software, Pty Ltd.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
Tff7b72#Tff7b72ifndef CRYPTO_CBC_h
Tff7b72#Tff7b72define CRYPTO_CBC_h
Tff7b72#Tff7b72include T8b949e<Cipher.h>
Tff7b72#Tff7b72include T8b949e<BlockCipher.h>
Te6edf3class Te6edf3CBCCommon Tff7b72: Te6edf3public Te6edf3Cipher
Tb4b4b4{
Te6edf3publicTff7b72:
Te6edf3virtual Tff7b72~Te6edf3CBCCommonTb4b4b4(Tb4b4b4)Tb4b4b4;
Tffa657size_t Td2a8ffkeySizeTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tffa657size_t Td2a8ffivSizeTb4b4b4(Tb4b4b4) Tff7b72constTb4b4b4;
Tffa657bool Td2a8ffsetKeyTb4b4b4(Tff7b72const Tffa657uint8_tTff7b72* Te6edf3keyTb4b4b4, Tffa657size_t Te6edf3lenTb4b4b4)Tb4b4b4;
Tffa657bool Td2a8ffsetIVTb4b4b4(Tff7b72const Tffa657uint8_tTff7b72* Te6edf3ivTb4b4b4, Tffa657size_t Te6edf3lenTb4b4b4)Tb4b4b4;
Tffa657void Td2a8ffencryptTb4b4b4(Tffa657uint8_tTff7b72* Te6edf3outputTb4b4b4, Tff7b72const Tffa657uint8_tTff7b72* Te6edf3inputTb4b4b4, Tffa657size_t Te6edf3lenTb4b4b4)Tb4b4b4;
Tffa657void Td2a8ffdecryptTb4b4b4(Tffa657uint8_tTff7b72* Te6edf3outputTb4b4b4, Tff7b72const Tffa657uint8_tTff7b72* Te6edf3inputTb4b4b4, Tffa657size_t Te6edf3lenTb4b4b4)Tb4b4b4;
Tffa657void Td2a8ffclearTb4b4b4(Tb4b4b4)Tb4b4b4;
Te6edf3protectedTff7b72:
Te6edf3CBCCommonTb4b4b4(Tb4b4b4)Tb4b4b4;
Tffa657void Td2a8ffsetBlockCipherTb4b4b4(Te6edf3BlockCipher Tff7b72*Te6edf3cipherTb4b4b4) Tb4b4b4{ Te6edf3blockCipher Tff7b72= Te6edf3cipherTb4b4b4; Tb4b4b4}
Te6edf3privateTff7b72:
Te6edf3BlockCipher Tff7b72*Te6edf3blockCipherTb4b4b4;
Tffa657uint8_t Te6edf3ivTb4b4b4[T79c0ff16Tb4b4b4]Tb4b4b4;
Tffa657uint8_t Te6edf3tempTb4b4b4[T79c0ff16Tb4b4b4]Tb4b4b4;
Tffa657uint8_t Te6edf3posnTb4b4b4;
Tb4b4b4}Tb4b4b4;
Te6edf3template Tff7b72<Te6edf3typename Te6edf3TTff7b72>
Te6edf3class Te6edf3CBC Tff7b72: Te6edf3public Te6edf3CBCCommon
Tb4b4b4{
Te6edf3publicTff7b72:
Te6edf3CBCTb4b4b4(Tb4b4b4) Tb4b4b4{ Te6edf3setBlockCipherTb4b4b4(Tff7b72&Te6edf3cipherTb4b4b4)Tb4b4b4; Tb4b4b4}
Te6edf3privateTff7b72:
Te6edf3T Te6edf3cipherTb4b4b4;
Tb4b4b4}Tb4b4b4;
Tff7b72#Tff7b72endif
Served by rngit 1.4.2 - Generated in 0.01s